package com.letv.whatslive.model.convert;

import com.letv.whatslive.model.PaikeAmbassador;
import com.letv.whatslive.model.PaikeInstitution;
import com.letv.whatslive.model.utils.ObjUtils;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import org.apache.commons.lang3.StringUtils;

/**
 * Created by shenyue on 16-3-21.
 */
public class PaikeAmbassadorConvert {

    public static DBObject castPaikeAmbassadorToDBObject(PaikeAmbassador paikeAmbassador) {
        DBObject dbo = new BasicDBObject();
        if (paikeAmbassador.getId() != null) {
            dbo.put("_id", paikeAmbassador.getId());
        }
        if (paikeAmbassador.getUserId() != null) {
            dbo.put("userId", paikeAmbassador.getUserId());
        }
        dbo.put("ambassadorName", ObjUtils.ifNull(paikeAmbassador.getAmbassadorName(), ""));
        if(StringUtils.isNotBlank(paikeAmbassador.getAmbassadorContacter()))
            dbo.put("ambassadorContacter", ObjUtils.toString(paikeAmbassador.getAmbassadorContacter()));
        if(StringUtils.isNotBlank(paikeAmbassador.getAmbassadorContacterPhoneNo()))
            dbo.put("ambassadorContacterPhoneNo", ObjUtils.toString(paikeAmbassador.getAmbassadorContacterPhoneNo()));
        dbo.put("createTime", ObjUtils.toLong(paikeAmbassador.getCreateTime(), System.currentTimeMillis()));
        dbo.put("updateTime", ObjUtils.toLong(paikeAmbassador.getUpdateTime(), System.currentTimeMillis()));
        if(paikeAmbassador.getCreateByPersonLoginName()!=null)
            dbo.put("createByPersonLoginName",ObjUtils.toString(paikeAmbassador.getCreateByPersonLoginName()));
        dbo.put("bankCardNo", ObjUtils.ifNull(paikeAmbassador.getBankCardNo(), ""));
        if (paikeAmbassador.getBankId() != null) {
            dbo.put("bankId", paikeAmbassador.getBankId());
        }
        if(paikeAmbassador.getCreateByPersonLoginName()!=null)
            dbo.put("createByPersonLoginName",ObjUtils.toString(paikeAmbassador.getCreateByPersonLoginName()));
        if(StringUtils.isNotBlank(paikeAmbassador.getEmail()))
            dbo.put("email",ObjUtils.toString(paikeAmbassador.getEmail()));
        return dbo;
    }

    public static PaikeAmbassador castDBObjectToPaikeAmbassador(DBObject dbObject){
        if(dbObject != null) {
            PaikeAmbassador paikeAmbassador = new PaikeAmbassador();
            paikeAmbassador.setId(ObjUtils.toLong(dbObject.get("_id")));
            paikeAmbassador.setUserId(ObjUtils.toLong(dbObject.get("userId")));
            paikeAmbassador.setAmbassadorName(ObjUtils.toString(dbObject.get("ambassadorName")));
            paikeAmbassador.setAmbassadorContacter(ObjUtils.toString(dbObject.get("ambassadorContacter")));
            paikeAmbassador.setAmbassadorContacterPhoneNo(ObjUtils.toString(dbObject.get("ambassadorContacterPhoneNo")));
            paikeAmbassador.setCreateTime(ObjUtils.toLong(dbObject.get("createTime")));
            paikeAmbassador.setUpdateTime(ObjUtils.toLong(dbObject.get("updateTime")));
            paikeAmbassador.setCreateByPersonLoginName(ObjUtils.toString(dbObject.get("createByPersonLoginName")));
            paikeAmbassador.setBankCardNo(ObjUtils.toString(dbObject.get("bankCardNo"), ""));
            paikeAmbassador.setBankId(ObjUtils.toLong(dbObject.get("bankId")));
            paikeAmbassador.setEmail(ObjUtils.toString(dbObject.get("email"), ""));
            return paikeAmbassador;
        }else{
            return null;
        }

    }
}
